/*
* ===================================================
*
*       Filename:  cell.hh
*
*       Version:  1.0
*       Created:  12/09/2011 03:57:27 PM
*       Compiler:  g++
*
*       Author:  durand_y, <yoan.durand@gmail.com>
*
* ===================================================
*/

#ifndef CELL_HH
# define CELL_HH

# include <list>
# include "piece.hh"
# include "pheromone.hh"

/*!
* \class Cell
* \brief represente one cell of the game board
*
* \param piece_ is the piece on the cell at the moment
* \param l_phero_ is the list of the pheromone on the cell
* \param map_ is the board of the game
*
* \fn print () display the content of the cell
*/

class Cell
{
public:
	Cell (int x, int y);
	Cell ();
	~Cell ();
	// method
	void print ();
	int commute_interest (std::string type,
						  int team);
	//getter
	Piece* get_piece ()
	{
		return (this->piece_);
	}

	void set_piece (Piece* p)
	{
		piece_ = p;
	}
	std::list <Pheromone *> get_l_phero ()
	{
		return (this->l_phero_);
	}
	int get_interest ()
	{
		return (this->interest_);
	}

	void set_interest (int i)
	{
		this->interest_ = i;
	}
private:
	Piece* piece_;
	int interest_;
	std::list <Pheromone *> l_phero_;
};

#endif /* !CELL_HH */
